package Day_0218.DataType;

/**
 * @author zxc
 * @date 2023/02/18 14:40
 **/
public class No_Variable_Construction_Method {
    public static void main(String[] args) {
        /**
         * Java中，需要定义一个无参 && 没有任何实际作用的构造方法的作用
         * ===》
         * （1）Java程序，在执行子类的构造方法之前，
         *  如果没有显示地用super()来调用父类特定的构造方法，则会调用父类中“没有参数的构造方法”。
         *
         * （2）如果父类中只定义了有参数的构造方法，而在子类的构造方法中又没有用super()来调用父类中特定的构造方法，
         *  则编译时将发生错误，因为Java程序在父类中找不到没有参数的构造方法可供执行。
         *
         * （3）解决办法是在父类里加上一个不做事且没有参数的构造方法。
         *
         * ===》
         * 总结 ：
         * （1）即，子类构造方法执行之前，会默认调用父类的无参构造方法，
         * （2）若是父类中有且仅有有参的构造方法 && 子类的构造方法中，没有显示地调用父类的构造方法 的话，
         *  由于子类找不到父类的无参构造方法，所以会报编译时错误;
         *
         */

        /**
         * 在调用子类构造方法之前，会先调用父类没有参数的构造方法
         * ===》
         * 目的 ：帮助子类做初始化工作。
         */
    }
}
